//AccountBaseService.java
package com.lqjava.tuxiaowang.tuxiaowang.serverapp.app.service;

import com.lqjava.tuxiaowang.tuxiaowang.beans.entity.request.LoginRequest;
import com.lqjava.tuxiaowang.tuxiaowang.serverapp.app.service.common.*;
import com.lqjava.tuxiaowang.tuxiaowang.beans.entity.request.IDRequest;
import com.lqjava.tuxiaowang.tuxiaowang.beans.entity.domain.AccountBase;
import com.lqjava.tuxiaowang.tuxiaowang.beans.entity.request.AccountBaseOptionRequest;
import com.lqjava.tuxiaowang.tuxiaowang.beans.entity.request.AccountBaseQuesrRequest;
import com.lqjava.tuxiaowang.tuxiaowang.beans.entity.response.AccountBaseViewResponse;

import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;


/**
* 账户基础Service
* 用于描述账户的基础信息Service接口
* @author lq 2021-03-21 17:08:41
*/
public interface AccountBaseService extends ICRUDService<AccountBase> {

    //获取视图对象
    public AccountBaseViewResponse getView(IDRequest request);
    //获取视图对象集合
    public List<AccountBaseViewResponse> listView(AccountBaseQuesrRequest request);
    //获取视图对象分页集合
    public IPage<AccountBaseViewResponse> pageView(AccountBaseQuesrRequest request);

    //插入实体
    public Long insert(AccountBaseOptionRequest request);
    //修改实体
    public Long update(AccountBaseOptionRequest request);
    //保存实体 (通过id判断是新增还是修改)
    public Long save(AccountBaseOptionRequest request);
    //删除实体
    public Long del(IDRequest request);

    String login(LoginRequest request);
}
